screenshot of FreeDOS 1.4

Welcome to FreeDOS

FreeDOS is an open source DOS-compatible operating system that you can use to play classic DOS games, run legacy business software, or write new DOS programs. Any program that works on MS-DOS should also run on FreeDOS.

Play classic games

You can play your favorite DOS games on FreeDOS. And there are a lot of great classic games to play: Wolfenstein 3D, Doom, Commander Keen, Rise of the Triad, Jill of the Jungle, Duke Nukem, and many others!

Run applications

You can run your favorite DOS programs with FreeDOS. Or use FreeDOS to run a legacy DOS application. Just install your DOS program under FreeDOS like you would any DOS application and you'll be good to go.

For developers

FreeDOS includes lots of programming tools so you can create your own DOS programs. You can also modify FreeDOS itself, because we include the source code under an open source license.

What’s New

Packet Drivers Collection for FreeDOS

In 1986 FTP Software Inc. created the PC/TCP Packet Driver specification which defined an API for sending and receiving packets over networking devices. Inside the packet driver is code to talk to a specific piece of hardware. That hardware might be a network adapter, an Ethernet chipset connected through the parallel port, or even just a plain serial port. A packet driver makes the hardware and network accessible in an easy manner. Omar Yabar has collected a ton of DOS-era packet drivers in one place, so you can easily download the one you want. Find them at the Packet Drivers Collection. We can't include these in the FreeDOS distribution because they are not open source, but we really appreciate the hard work Omar has done to collect these for DOS fans to use!

NASM 3.01

NASM is the Netwide Assembler, an open source assembler for the x86 CPU architecture, including DOS. There's a new update available now: version 3.01 mostly contains fixes such as: * The condition after %if or %elif would be evaluated while output is suppressed after %exitrep or %exitmacro * Fix encoding of TCVTROWPS2PHL * The unofficial but obvious alternate form TEST reg,mem was not accepted by NASM 3.00 * A new %selbits() preprocessor function and command line option * Define additional permissive patterns and fix several opcode bugs * Fix parsing of two-operand forms of x87 instructions * And other fixes. See the NASM documentation for more. Download the new version from the official releasebuilds 3.01

FDNPKG16 ver. 0.99.8249

FreeDOS developer 'sparky4' has been working on an updated version of the FreeDOS package manager, FDNPKG16, which runs as a 16-bit program. There's a new release to try out, here are the release notes (slightly edited for readability): "Merged fdnpkg16 and fdnpkg86 to one program that uses httpget externally. too many issues with them separate and running like before. The older fdnpkg16 will eat memory and you cannot install hundreds of packages when it eats memory (6400) every time it called httpget, so I call it in an external simple program. Note: this does break international support for that particular area. There's a problem in fdnpkg86 with downloading files - on my recently acquired Toshiba T1200 system, it just takes too long, like over 2 hours for it to fail. But this should work now on all systems with more than 480kB of memory." You can get the latest version at FDNPKG16 releases on GitHub or more directly from FDNPKG16 ver. 0.99.8249.

HDPMI 3.23

Japheth has released a new version of HDPMI, part of HX DOS extender. Version 3.23 has quite a few interesting fixes and features, including: - fixed int 25h/26h, cx != -1: don't copy (non-existing) diskio struct to TLB - int 31h, ax=0B00h: support DH=3 (I/O watchpoint) - fixed int 21h, ax=71a7h, bl=0: src must be ds:e/si, but es:e/si was used - switch ?SAVESSESPONINIT now always 1; should fix problems with IRQs handled by a client while another client is initializing - and other changes. You can find it at HX DOS extender on GitHub.

VSBHDA v1.8

VSBHDA is a Virtual Sound Blaster emulator for HDA, so you can emulate classic SoundBlaster16 audio when running FreeDOS on more modern hardware. Japheth has released a new version of VSBHDA. Version 1.8 has several fixes, runs on real hardware and has been tested to work with VMWare, QEMU, and VirtualBox ( these environments support both HDA and AC'97, VMWare additionally ES1371 ). They also support SoundBlaster emulation natively, but Japheth notes this is often of "minor quality."

NetMount client and server, version 1.6.0

If you need DOS to access directories on remote computers as a network drive, you can also try the NetMount program. Jaroslav just released a new version of the NetMount components (NetMount client v1.6.0, server v1.6.0, and NInstall v1.0) with several improvements and new features: NetMount client got a few upgrades - most notably, it now supports read-ahead buffering (64-byte buffer), which can significantly speed things up when reading files in small chunks. NetMount server now supports Unicode-to-ASCII transliteration when converting filenames to the DOS 8.3 format. There’s also a new DOS utility called NInstall. It installs (loads) the NetMount DOS TSR client using parameters from a config file. You can find it at NetMount on GitHub and this release is at NetMount client 1.6.0, server 1.6.0, ninstall 1.0